
package com.storm.lib.po;

import java.sql.Timestamp;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import com.storm.lib.base.BasePo;
import com.storm.lib.base.BaseUserDBPo;
import com.storm.lib.type.SystemType;



	/**
	 *
	 * 类功能: Timer
	 *
	 * @author Johnny
	 * @version 40513.0
	 */
	@Entity
	@Table(name = "po_timer",catalog=SystemType.USER_DB_NAME)
	public class TimerPo extends BaseUserDBPo {
	/**
	*主键
	**/

	private Integer id;
	/**
	*描述:起始时间,备注:Timer开启时间,读频率:4,写频率:4
	**/

	private Timestamp startTime;
	/**
	*描述:结束时间,备注:Timer触发时间,读频率:4,写频率:4
	**/

	private Timestamp endTime;
	/**
	*描述:Timer类型,备注:详见TimerType,读频率:4,写频率:4
	**/

	private Short timerType;
	/**
	*描述:Timer状态,备注:0:等待 1.完成,读频率:4,写频率:4
	**/

	private Short state;
	/**
	*描述:参数,备注:见BaseParam,读频率:4,写频率:4
	**/

	private String parameters;

	@Id @GeneratedValue

	@Column(name="id", unique=true, nullable=false)
	 public Integer getId() {
		return this.id;
	}
	public void setId(Integer id) {
		this.id = id;
	}

	@Column(name="start_time")
	 public Timestamp getStartTime() {
		return this.startTime;
	}
	public void setStartTime(Timestamp startTime) {
		changed(startTime, this.startTime);
		this.startTime = startTime;
	}

	@Column(name="end_time")
	 public Timestamp getEndTime() {
		return this.endTime;
	}
	public void setEndTime(Timestamp endTime) {
		changed(endTime, this.endTime);
		this.endTime = endTime;
	}

	@Column(name="timer_type")
	 public Short getTimerType() {
		return this.timerType;
	}
	public void setTimerType(Short timerType) {
		changed(timerType, this.timerType);
		this.timerType = timerType;
	}

	@Column(name="state")
	 public Short getState() {
		return this.state;
	}
	public void setState(Short state) {
		changed(state, this.state);
		this.state = state;
	}

	@Column(name="parameters")
	 public String getParameters() {
		return this.parameters;
	}
	public void setParameters(String parameters) {
		changed(parameters, this.parameters);
		this.parameters = parameters;
	}

	// timerPo.setStartTime(startTime)
	// timerPo.setEndTime(endTime)
	// timerPo.setTimerType(timerType)
	// timerPo.setState(state)
	// timerPo.setParameters(parameters)
	public void loadData(BasePo basePo) {
		if(loaded==false){
			unChanged();
			loaded =true;
		}
	}
}